package com.lzy.service;

import com.lzy.po.Blog;
import com.lzy.po.BlogQuery;
import org.springframework.data.domain.Page;
import org.springframework.data.domain.Pageable;

import java.util.List;
import java.util.Map;

/**
 * @autor shkstart
 * @create 2021-01-06 14:14)
 */
public interface BlogService {

    Blog getBlog(Long id);

    Blog getAndConvert(Long id);  //根据id获取博客转换为html

    Page<Blog> listBlog(Pageable pageable, BlogQuery blogQuery);

    Page<Blog> listBlog(Pageable pageable);

    Page<Blog> listBlog(Long tagId,Pageable pageable);//tag页面使用

    Map<String,List<Blog>> archiveBlog();//规定页面使用

    Page<Blog> listBlog(Pageable pageable,String query); //导航栏中的搜索框根据标题，内容查询

    List<Blog> listBlogTop(Integer size);//获取首页最新图推荐博客数

    Blog saveBlog(Blog blog);

    Blog updateBlog(Long id,Blog blog);

    void deleteBlog(Long id);

    //获取博客条数
    Long countBlog();


}
